#ifndef N1PROCESS_INFO_H_2006_10_29
#define N1PROCESS_INFO_H_2006_10_29

#include "N1Lib.h"

enum {  /* Constants returned by -peratingSystem */
    NSWindowsOperatingSystem = 1,
    NSLinuxOperatingSystem
};


class NEXPORT N1ProcessInfo : public N1Object {
private:
    //friend class N1ApplicationSingleton<N1ProcessInfo>; 

    N1ProcessInfo();
    ~N1ProcessInfo();

    //static N1ApplicationSingleton<N1ProcessInfo> m_processInfo;

public:
    N1NAME(N1ProcessInfo);
    N1DESC

    static N1ProcessInfo* processInfo();

/*    N1Dictionary environment();
    N1Array      arguments();
    N1String     hostName();
    N1String     processName();
    N1UInt32     processIdentifier();
    void         setProcessName(const char * newName);
    NSString     globallyUniqueString();

    N1UInt32     operatingSystem();
    NSString     operatingSystemName();

    // Human readable, localized; appropriate for displaying to user or using
    // in bug emails and such; NOT appropriate for parsing 
    NSString     operatingSystemVersionString();*/
};


#endif //N1PROCESS_INFO_H_2006_10_29
